package cn.dakaqi.activity.recruit.services;

import cn.dakaqi.entities.ActivityRecruitVolunteer;
import cn.dakaqi.utils.exception.ServiceRuntimeException;
import org.springframework.data.domain.Page;

/**
 * Created by chunyang on 2016/4/19.
 */
public interface ActivityRecruitVolunteerService
{
    void create(String param)throws ServiceRuntimeException;
    void save(ActivityRecruitVolunteer activityRecruitVolunteer)throws ServiceRuntimeException;
    void update(ActivityRecruitVolunteer activityRecruitVolunteer)throws ServiceRuntimeException;
    Page<ActivityRecruitVolunteer> findAll(Long activityRecruitId,int pageNumber)throws ServiceRuntimeException;
    Page<ActivityRecruitVolunteer> findByActivityRecruit(Long activityRecruitId,int status,int pageNumber)throws ServiceRuntimeException;
    Page<ActivityRecruitVolunteer> findByActivityRecruit(String activityCode,int status,int pageNumber)throws ServiceRuntimeException;
    void updateStatus(String param)throws ServiceRuntimeException;
    void updateStatus(Long activityRecruitVolunteerId,int status,String refuseCase)throws ServiceRuntimeException;
    ActivityRecruitVolunteer findOne(Long activityRecruitVolunteerId)throws ServiceRuntimeException;
    ActivityRecruitVolunteer isApply(Long activityRecruitId,String memberCode)throws ServiceRuntimeException;
    void exit(String param)throws ServiceRuntimeException;
    void exit(ActivityRecruitVolunteer activityRecruitVolunteer)throws ServiceRuntimeException;
    int countForWaite(String activityCode)throws ServiceRuntimeException;
}
